home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / COMAL / Z-Misc Series / (k)zh.d64 / txt.discard < prev    next >
Text File  |  2007-03-01  |  3KB  |  146 lines

  1. ─╔╙├┴╥─ ┴ ╥╧═'┼─ ╨┴├╦┴╟┼
  2.  
  3. BY ─ICK ╦LINGENS,
  4. ─UTCH ├╧═┴╠ ╒SERS ╟ROUP
  5.  
  6. ┘OU HAVE DONE A LOT OF TYPING: 500+
  7. LINES ARE IN COMPUTER MEMORY. ┴ NEW
  8. PROGRAM IS BORN. ╘HE ONLY THING LEFT
  9. TO DO IS TO LINK A PACKAGE ONTO IT
  10. AND THEN TEST THE PROGRAM. ╘HE
  11. PACKAGE NAME IS 'PKG.TEXT'; BUT BY
  12. MISTAKE YOU TYPED
  13.  
  14.    ╠╔╬╦ "PKG.TEST"
  15.  
  16. ┴ND THAT PACKAGE IS ROM'ED!
  17.  
  18. ╫HAT TO DO? ─ISCARD DOES NOT HELP
  19. YOU: A ROM'ED PACKAGE CANNOT BE
  20. DISCARDED. ╘HERE ARE SOME
  21. POSSIBILITIES:
  22.  
  23. 1. ╙WITCH THE COMPUTER OFF AND ON AND
  24.    ... ╔ DON'T LIKE THIS METHOD. ─O
  25.    YOU?
  26.  
  27. 2. ╠╔╙╘ "YOUR PROGRAM" // TO DISK
  28.  
  29.    ╙┘╙ $C87B
  30.    ┼╬╘┼╥ "YOUR PROGRAM"
  31.  
  32. 3. ╘YPE THE FOLLOWING LINES
  33.  
  34.    ═┼╥╟┼ "PRC.RAMLIBS"
  35.    // (IF IT'S ON YOUR DISK)
  36.    ╙├┴╬
  37.    RAMALL
  38.    ─┼╠ RAMALL
  39.    ─╔╙├┴╥─
  40.  
  41. ╬OW TYPE
  42.  
  43.    ╠╔╬╦ "PKG.TEXT"
  44.    // (THE RIGHT ONE!)
  45.  
  46. ═ETHOD 3 IS A TIME SAVING ONE. ╔T IS
  47. BASED ON A SMALL PROCEDURE:
  48.  
  49. ╨╥╧├ RAMALL ├╠╧╙┼─
  50.   ╒╙┼ SYSTEM
  51.   LIBPT:=$C7EF // NUMBER OF LIBRARIES
  52.   LIBLO:=$C7F0 // LO START EACH LIB
  53.   LIBHI:=$C7FA // HI START EACH LIB
  54.   LIBPAG:=$C804 // PAGE OF EACH LIB
  55.   MASK:=%00010000 ┬╔╘╪╧╥ 255
  56.   NUMBER:=╨┼┼╦(LIBPT)
  57.   ╞╧╥ I#:=1 ╘╧ NUMBER ─╧
  58.     LO:=╨┼┼╦(LIBLO+I#-1)
  59.     HI:=╨┼┼╦(LIBHI+I#-1)
  60.     PAG:=╨┼┼╦(LIBPAGI#-1)
  61.     SETPAGE(PAG)
  62.     RAM(LO+256*HI)
  63.   ┼╬─╞╧╥ I#
  64.   ┼╬─ "┴LL LIBRARIES ARE RAM'ED NOW"
  65.   //
  66.   ╨╥╧├ RAM(ADRS)
  67.     ╨╧╦┼ ADRS, ╨┼┼╦(ADRS) ┬╔╘┴╬─ MASK
  68.   ┼╬─╨╥╧├ RAM
  69. ┼╬─╨╥╧├ RAMALL
  70.  
  71. ╔T IS POSSIBLE TO HAVE A TOTAL OF TEN
  72. LIBRARIES (PACKAGES) IN MEMORY AT A
  73. TIME (8 MADE BY YOURSELF AND 2
  74. STANDARD). ╘HE NUMBER OF STORED
  75. PACKAGES IS IN ADDRESS $C7EF.
  76. ╙TARTING FROM $C7F0 WE FIND THE LOW
  77. BYTE OF THE START ADDRESS OF EACH
  78. PACKAGE; FROM $C7FA ALL HIGH BYTES
  79. ARE LOCATED.
  80.  
  81. ╘HE PACKAGE PAGES ARE STORED FROM
  82. $C804. ╘HE FIRST BYTE OF THE PACKAGE
  83. ITSELF CONTAINS ITS PAGE INFORMATION.
  84. ╞ROM THE FORMAT OF THE FIRST PART OF
  85. ROM'ED PACKAGE:
  86.  
  87.    .LIB C64SYMB
  88.    *=<START ADDRESS>
  89.    .BYTE <PAGE>+ROMMED
  90.  
  91. WE DEDUCT THAT 'TO BE ROMMED OR NOT'
  92. IS 'HIDED' IN THAT FIRST BYTE: THE
  93. VALUE OF ╥╧══┼─ IS ADDED TO THE PAGE
  94. SPECIFICATION. ╥╧══┼─ EQUALS
  95. %00010000. ┼.G. IF ─┼╞╨┴╟ WAS USED AS
  96. THE PAGE FOR THE PACKAGE, WE HAVE:
  97.  
  98.    ─┼╞╨┴╟ = %01000110
  99.    ╥╧══┼─ = %00010000
  100.             ---------+
  101.             %01010110
  102.  
  103. ╘O FILTER THE ROM BIT OUT WE USE
  104. 'REVERSE BINARY ADDING'.
  105. ╫E ACT LIKE THIS:
  106.  
  107. ╨┴╟┼=%01010110
  108. MASK=%11101111 (%00010000 ┬╔╘╪╧╥ 255)
  109.      ---------BITAND
  110.      %01000110
  111.  
  112. ╘HIS PROCESS CHANGES A ROM'ED PACKAGE
  113. INTO A RAM'ED ONE, BUT LEAVES AN
  114. ALREADY RAM'ED PACKAGE AS IT WAS.
  115. ╘HIS IS NECESSARY, BECAUSE THERE CAN
  116. BE A RAM'ED PACKAGE IN MEMORY TOO.
  117.  
  118. ╧N DISK THERE IS A PROGRAM
  119. "REMOVE'LIBS". ╘HE PROCEDURE ╥┴═┴╠╠
  120. IS USED IN THE PROGRAM. ┴ SPECIAL
  121. PACKAGE CALLED 'NOTBASIC' IS LINKED
  122. ONTO THE PROGRAM. ╬╧╘┬┴╙╔├ PREVENTS
  123. THE USER OF A PROGRAM FROM TYPING IN
  124. THE COMMANDS:
  125.  
  126.    ╬┼╫
  127.    ┬┴╙╔├
  128.    ─╔╙├┴╥─
  129.  
  130. ╧NLY AFTER TYPING A CODE THE COMMANDS
  131. ARE EXECUTED.
  132.  
  133. ╞IRST ╠╧┴─ THE PROGRAM (DON'T ╥╒╬ IT
  134. FROM THE DIRECTORY), ╠╔╙╘ IT AND READ
  135. THE REMARKS IN THE PROGRAM, AND
  136. REMEMBER THE CODE. ╬OW TYPE:
  137.  
  138. ─╔╙├┴╥─
  139.  
  140. AND ╥╒╬.
  141.  
  142. ╧N THE DISK YOU WILL FIND AN (ALMOST)
  143. EMPTY, BUT ╥╧═'ED, 'PKG.TEST' TOO.
  144. ╘RY TO LINK THIS PACKAGE TWICE WITH
  145. THE ABOVE PROGRAM STILL IN MEMORY.
  146.